

#!/bin/bash

# 设置颜色输出
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m' # No Color

echo -e "${GREEN}开始执行 Docker Compose 启动...${NC}"

# 第一步：执行 docker compose up -d
echo -e "${YELLOW}执行: docker compose up -d${NC}"
docker compose up -d  --build

# 检查上一步是否执行成功
if [ $? -eq 0 ]; then
    echo -e "${GREEN}✓ Docker Compose 启动成功${NC}"
else
    echo -e "${RED}✗ Docker Compose 启动失败${NC}"
    exit 1
fi

echo -e "\n${GREEN}开始清理悬空镜像...${NC}"

# 第二步：删除悬空镜像（没有标签的镜像）
echo -e "${YELLOW}执行: docker image prune -f${NC}"

# 显示将要删除的镜像
echo -e "${YELLOW}当前悬空镜像:${NC}"
docker images -f "dangling=true"

# 执行删除操作
docker image prune -f

if [ $? -eq 0 ]; then
    echo -e "${GREEN}✓ 悬空镜像清理完成${NC}"
else
    echo -e "${RED}✗ 悬空镜像清理失败${NC}"
fi

# 可选：显示当前磁盘使用情况
echo -e "\n${GREEN}当前 Docker 磁盘使用情况:${NC}"
docker system df

echo -e "\n${GREEN}脚本执行完成！${NC}"
